Equal-cost multi-path (ECMP) routing is a network routing technique where incoming network traffic destined for the same next-hop destination may be routed over multiple “best cost” paths. Generally, network routers are designed to forward incoming network traffic using egress network links that offer the lowest cost for the next hops. Network routers determine lowest cost egress network links by considering multiple metrics such as, network path length, reliability, delay, bandwidth, load, and the like. When multiple egress network links are determined to have equal cost, network routers may sometimes apply load balancing algorithms to distribute network traffic among the equal cost next hop egress network links. In many circumstances, the effectiveness of load balancing depends several factors, such as, network topology, network protocol, number of egress network links, probability of egress network link failure, hardware configuration and features, number of ingress network links, network routing table geometry, and the like. For example, some commonly used ECMP load balancing strategies are less effective when the number of equal cost next hop egress network links is not a power-of-two.
Given the dynamic nature of network traffic and the complexity of network architecture and routing configurations it can be difficult for network administrators to identify and implement ECMP load balancing strategies that are effective. However, ECMP load balancing may be improved if network routing tables can be programmed when load balancing performance is determined to be unsatisfactory.